/*****************************************************************************
*
*  PROJECT:     SlipStream
*               (Text classes)
*  LICENSE:     GNU General Public License v3 - http://www.gnu.org/licenses/gpl.html

*  DEVELOPERS:  Philip Farquharson <B00137077@studentmail.uws.ac.uk>
*				John Gray <B00145524@studentmail.uws.ac.uk>		
*				Zohaib Bhatti <B00104280@studentmail.uws.ac.uk>
*				Euan Hislop <B00138636@studentmail.uws.ac.uk>
*
*****************************************************************************/
#ifndef CTEXTOBJECT
#define CTEXTOBJECT

#include "CVector2.h"
#include "CColor.h"
#include "lib.h"
#include <windows.h>								
#include <windowsx.h>
#include <gl\gl.h>								
#include <gl\glu.h>
#include <string>
#include <sstream>

class CTextObject
{		
	private:
		char* m_szText;
		CColor m_colText;
		bool m_bVisible;

		CVector2 m_vecPosition;

	public:
		// Constructor
		CTextObject();
		CTextObject(CVector2 vecPosition, CColor colText, const char* szInitialText);
		~CTextObject();

		// Functions
		void Move(CVector2 vecPosition);
		void setText(const char* szText, ...);
		const char* getText() const											{ return m_szText; }
		void Draw(GLuint fontBase);

		void setVisible ( bool bVisible )									{ m_bVisible = bVisible; }
		const bool getVisible ( void ) const								{ return m_bVisible; }

		void setPosition ( CVector2 vecPosition )							{ m_vecPosition.update(vecPosition); }
		const CVector2 getPosition ( void ) const							{ return m_vecPosition; }
};
#endif